Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Llvm16 #189

Closed
wants to merge 103 commits into from
Closed

Llvm16 #189

wants to merge 103 commits into from

Conversation

smuzaffar
Copy link

No description provided.

@smuzaffar
Copy link
Author

smuzaffar commented Dec 1, 2023

test parameters:

@smuzaffar
Copy link
Author

please test

@cmsbuild
Copy link

cmsbuild commented Dec 1, 2023

A new Pull Request was created by @smuzaffar (Malik Shahzad Muzaffar) for branch cms/master/83d9889d7e.

@iarspider, @aandvalenzuela, @cmsbuild, @smuzaffar can you please review it and eventually sign? Thanks.
@sextonkennedy, @rappoccio, @antoniovilela you are the release manager for this.
cms-bot commands are listed here

@cmsbuild
Copy link

cmsbuild commented Dec 1, 2023

-1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-0b56f5/36240/summary.html
COMMIT: cc55a9d
CMSSW: CMSSW_14_0_X_2023-11-30-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/root/189/36240/install.sh to create a dev area with all the needed externals and cmssw changes.

External Build

I found compilation error when building:

File "/data/cmsbld/jenkins/workspace/ib-run-pr-tests/pkgtools/scheduler.py", line 267, in doSerial
result = commandSpec[0](*commandSpec[1:])
File "./pkgtools/cmsBuild", line 3701, in installPackage
File "./pkgtools/cmsBuild", line 3452, in installRpm
RpmInstallFailed: Failed to install package root. Reason:
error: Failed dependencies:
	/usr/bin/python is needed by lcg+root+6.26.11-450c552b334c6c6c6ce355bad6de4fb4-1-1.x86_64

* The action "build-cms+dqmgui+1.0.1_R6.26.11-34632a6ac0a967b4c022a3290e940479" was not completed successfully because The following dependencies could not complete:
install-lcg+root+6.26.11-450c552b334c6c6c6ce355bad6de4fb4
* The action "build-cms+cmssw-tool-conf+57.0-053f0623d2ec934a237598e0c1386b39" was not completed successfully because The following dependencies could not complete:


@smuzaffar
Copy link
Author

please test for CMSSW_14_0_ROOT6_X

@cmsbuild
Copy link

cmsbuild commented Dec 1, 2023

-1

Failed Tests: Build
Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-0b56f5/36246/summary.html
COMMIT: cc55a9d
CMSSW: CMSSW_14_0_ROOT6_X_2023-11-30-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/root/189/36246/install.sh to create a dev area with all the needed externals and cmssw changes.

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:

You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-0b56f5/36246/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-0b56f5/36246/git-merge-result

Build

I found compilation error when building:

>> Building binary testConditionDatabase_4
Copying tmp/el8_amd64_gcc12/src/CondCore/CondDB/test/testConditionDatabase_4/testConditionDatabase_4 to productstore area:
>> Compiling  /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_14_0_ROOT6_X_2023-11-30-2300/src/CondCore/CondDB/test/testConnectionPool.cpp
>> Building binary testConnectionPool
/data/cmsbld/jenkins/workspace/ib-run-pr-tests/testBuildDir/el8_amd64_gcc12/external/gcc/12.3.1-40d504be6370b5a30e3947a6e575ca28/bin/../lib/gcc/x86_64-redhat-linux-gnu/12.3.1/../../../../x86_64-redhat-linux-gnu/bin/ld.bfd: cannot find -lCondFormatsRunInfo: No such file or directory
collect2: error: ld returned 1 exit status
>> Deleted: tmp/el8_amd64_gcc12/src/CondCore/CondDB/test/testConnectionPool/testConnectionPool
gmake: *** [tmp/el8_amd64_gcc12/src/CondCore/CondDB/test/testConnectionPool/testConnectionPool] Error 1
>> Compiling  /data/cmsbld/jenkins/workspace/ib-run-pr-tests/CMSSW_14_0_ROOT6_X_2023-11-30-2300/src/CondCore/CondDB/test/testFrontier.cpp
>> Building binary testFrontier
Copying tmp/el8_amd64_gcc12/src/CondCore/CondDB/test/testFrontier/testFrontier to productstore area:


@smuzaffar
Copy link
Author

please test for CMSSW_14_0_ROOT6_X

@cmsbuild
Copy link

cmsbuild commented Dec 2, 2023

+1

Summary: https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-0b56f5/36257/summary.html
COMMIT: cc55a9d
CMSSW: CMSSW_14_0_ROOT6_X_2023-11-30-2300/el8_amd64_gcc12
User test area: For local testing, you can use /cvmfs/cms-ci.cern.ch/week1/cms-sw/root/189/36257/install.sh to create a dev area with all the needed externals and cmssw changes.

The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:

You can see more details here:
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-0b56f5/36257/git-recent-commits.json
https://cmssdt.cern.ch/SDT/jenkins-artifacts/pull-request-integration/PR-0b56f5/36257/git-merge-result

Comparison Summary

Summary:

enirolf and others added 10 commits December 4, 2023 16:32
In particular, delete the `RooTFoamBinding` source files. The class is
only used in `RooFoamGenerator`, so we can just define the
`RooTFoamBinding` class in `RooFoamGenerator.cxx`.
It's a very common pattern in the RooFit implementation and user code to
check the type when adding to a `RooAbsCollection`, and erroring out if
the type is not correct.

This commit suggests a function in `RooAbsCollection` to do exactly
this, drastically reducing the code duplication in RooFit and experiment
frameworks like CMS combine.
This fixes several tests on osx.
This fixes the -lSystem issues we saw on recent osx platforms.
In standalone builds, it could otherwise happen that the variable is
not set during the first CMake invocation and tests fail because they
are unable to locate the LLVM headers.
hahnjo and others added 24 commits December 9, 2023 20:58
These two fields don't exist anymore in LLVM 16.
The function overload without PrintingPolicy is not available in
LLVM 16, see https://reviews.llvm.org/D134813.
The GlobalDecl parameter wasn't used since quite some time.
adjustPassManager was only used for a few backends, such as AMDGPU
and NVPTX, but not on the CPU architectures we care about.
The DiscriminatorsPass was also removed upstream Clang, see commit
llvm/llvm-project@2978d02681.
In LLVM 16, we now get ElaboratedType far more often, but they don't
have all namespace qualifiers we need. This fixes the build of the
RooFitCore module, but many other places are likely affected as well.
GenericLLVMIRPlatformSupport now declares atexit, which leads to a
duplicate symbol error during startup and fails the transaction.
Completely switch to the provided infrastructure and just override
the helpers to register the functions with our Interpreter.
According to llvm/llvm-project@af27466c50,
it is used to represent types pulled in with a using declaration, for
example `using std::error_code; error_code x;`.

This fixes the build of the ROOTTMVASofie module on macOS where this
was causing `std::size_t` not be fully desugared to `unsigned long`
at first to later end up with two identical classes in a list that
must not have duplicates.
In LLVM 16, we get ElaboratedType's in TemplateArgument's and need
to recurse into them. This fixes the handling of Double32_t in the
test roottest-root-io-double32-make.
This fixes PyROOT's handling of smart pointers, such as shared_ptr,
with the new macOS SDK 14.0 resulting in a remove_extent transform.
With the upgrade to LLVM 16, we again have test failures due to crashes
and output ordering compared to the reference files.

This reverts commit 47277df.
This seems to be required with LLVM 16 on Windows and fixes
roottest/root/meta/callfunc/assertUnload.C
This fixes roottest/root/meta/tuple/exec_configtype_unload.C on Windows.

Co-authored-by: Bertrand Bellenot <[email protected]>
Exclude options::DXCOption to avoid confusing the parser with the
second -E option.
See also commit de84bfc during the previous LLVM upgrade...
LLVM now fully qualifies template template parameters when printing,
since commit llvm/llvm-project@5fb3f43778
As pointed out in that message, this makes it consistent with type
parameters, so add an additional test (Yd1) that would have already
passed with LLVM 13.
LLVM 16 honors how the declarations were written, without the class
or struct keywords.
@cmsbuild
Copy link

cmsbuild commented Dec 9, 2023

Pull request #189 was updated.

@smuzaffar smuzaffar closed this Dec 11, 2023
@hahnjo hahnjo deleted the llvm16 branch December 11, 2023 09:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.